package com.dingding.dao.usermangerdao.impl;

import java.math.BigDecimal;
import java.util.Date;
import java.util.Random;

import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;

import com.dingding.common.core.beans.UserCoupon;
import com.dingding.common.core.util.DateFormatUtil;
import com.dingding.common.core.util.ToolUtil;
import com.dingding.dao.basedao.impl.BaseDaoImpl;
import com.dingding.dao.usermangerdao.IUserCouponDao;

/**
 * @ClassName: IUserCouponDao 
 * @Description: 用户优惠券Dao
 * @author YHQ
 * @date 2016年2月18日 下午5:27:49
 */
public class UserCouponDaoImpl extends BaseDaoImpl<UserCoupon> implements IUserCouponDao {

	/**
	 * @Title: addUserCoupon 
	 * @Description: 添加用户优惠券
	 * @author YHQ
	 */
	@Override
	@Transactional(propagation = Propagation.REQUIRED)
	public boolean addUserCoupon(String userId) {
		
		UserCoupon userCoupon2 = new UserCoupon();
		userCoupon2.setUcId(ToolUtil.getUid()); // 优惠券ID
		userCoupon2.setLoginId(userId); // 用户ID
		userCoupon2.setCouponId(1); // 出行券
		userCoupon2.setCouponMoney(2); // 优惠金额
		userCoupon2.setCouponType(2);// 1：洗车券2：现金券3：折扣券
		userCoupon2.setCreateTime(new Date());
		userCoupon2.setExpiredTime(DateFormatUtil.yyyy_MM_dd_HHmmss("2016-11-31 23:59:59"));
		userCoupon2.setCouponStatus(2); // 优惠券状态 1：未激活 2：已激活 3：已使用 4：禁止使用  说明：  未激活状态为该优惠券需要用户分享app到朋友圈才可以用

		try {
			super.save(userCoupon2);
			return true;
		} catch (Exception e) {
			log.error("添加用户优惠券出现异常！", e);
		}

		return false;
	}
	
	/**
	 * 
	 * @Title: generateRandomMoney 
	 * @Description:生成优惠券金额
	 * @return double  优惠券金额
	 * @author CHEHAUNBO
	 * 
	 */
	@SuppressWarnings("unused")
	private double generateRandomMoney() {

		Random rand = new Random();
		int money = rand.nextInt(5);
		if (money == 0) {
			money += 1;
		}

		return money;
	}
	
}
